//可以用转义字符\来标识
var x = "imo'\"k";
console.log(x);

("\x41"); // 完全等同于 'A'
var a = "\x40";
console.log(a);

//由于多行字符串用\n写起来比较费事，所以最新的ES6标准新增了一种多行字符串的表示方法，用反引号 * ... * 表示：
var b = `小燕子穿花衣
年年春天来这里
我问燕子你晚上来
燕子说这里的春天最美丽`;

console.log(b);

var c =
    "小燕子穿花衣\n年年春天来这里\n我问燕子你晚上来\n燕子说这里的春天最美丽";
console.log(c);

//如果有很多变量需要连接，用+号就比较麻烦。ES6新增了一种模板字符串，
//表示方法和上面的多行字符串一样，但是它会自动替换字符串中的变量：

var d = "小花";
var sex = "女";
var id = "a01";
var f = "名字:" + d + "性别:" + sex + "学号:" + id;

console.log(f);

var d = "小花";
var sex = "女";
var id = "a01";
var e = `${d} ,${sex}, ${id}`;
console.log(e);

//要获取字符串某个指定位置的字符，使用类似Array的下标操作，索引号从0开始：
var j = 'abcdefg';
for (var i = 0; i < j.length; i++) {
    console.log(j[i]);
}


//indexOf
//indexOf()会搜索指定字符串出现的位置：
console.log(j.indexOf('g')); //返回6
console.log(j.indexOf('p')); // 没有找到指定的子串，返回-1

//substring()返回指定索引区间的子串：
var j = 'wecolme to china';
console.log(j.substring(0, 5)); // 从索引0开始到5（不包括5），返回'wecol'
console.log(j.substring(6)); //从索引6开始到结束，返回后面的数